Scalable Vector Graphics (SVG) is an extensible markup language (XML) markup for describing two-dimensional vector graphics. An application may use an SVG file to represent its user interface (UI). This SVG file can be referred to as the application's “skin”. Basic graphical UI requirements include the fact that an application must be able to graphically represent its status and react to input from the graphical user interface. The application should be able to:                a) react to user input from the GUI. Without this, applications will be limited to passively representing status. Most applications require some form of user interaction.        b) graphically reflect status to the user. Without this an application will not be able to represent status related to the business logic. The UI will be limited to accepting user input. Most applications have a requirement to display information about their status to the user. In general, both a) and b) must be satisfied.        
Traditional application graphical user interfaces are hard-coded along with the application logic. That is the look and behavior of the user interface is programmed with the application logic in a program like Java or C++ and embedded along with the application.